Longest Alternating Subsequence
   HOME

TheInfoList



OR:

In
combinatorial Combinatorics is an area of mathematics primarily concerned with counting, both as a means and an end in obtaining results, and certain properties of finite structures. It is closely related to many other areas of mathematics and has many ap ...
mathematics,
probability Probability is the branch of mathematics concerning numerical descriptions of how likely an event is to occur, or how likely it is that a proposition is true. The probability of an event is a number between 0 and 1, where, roughly speakin ...
, and
computer science Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (includi ...
, in the longest alternating subsequence problem, one wants to find a subsequence of a given
sequence In mathematics, a sequence is an enumerated collection of objects in which repetitions are allowed and order matters. Like a set, it contains members (also called ''elements'', or ''terms''). The number of elements (possibly infinite) is calle ...
in which the elements are in alternating order, and in which the sequence is as long as possible. Formally, if \mathbf = \ is a sequence of distinct real numbers, then the subsequence \ is ''alternating'' (or ''zigzag'' or ''down-up'') if :x_ > x_ < x_ > \cdots x_\qquad \text \qquad 1\leq i_1 < i_2 < \cdots < i_k \leq n. Similarly, \mathbf is ''reverse alternating'' (or ''up-down'') if :x_ < x_ > x_ < \cdots x_\qquad \text \qquad 1\leq i_1 < i_2 < \cdots < i_k \leq n. Let _n(\mathbf) denote the length (number of terms) of the longest alternating subsequence of \mathbf. For example, if we consider some of the permutations of the integers 1,2,3,4,5, we have that * _5(1,2,3,4,5) = 2 ; because any sequence of 2 distinct digits are (by definition) alternating. (for example 1,2 or 1,4 or 3,5); * _5(1,5,3,2,4) = 4, because 1,5,3,4 and 1,5,2,4 and 1,3,2,4 are all alternating, and there is no alternating subsequence with more elements; * _5(5,3,4,1,2) = 5, because 5,3,4,1,2 is itself alternating.


Efficient algorithms

The longest alternating subsequence problem is solvable in time O(n), where n is the length of the original sequence.


Distributional results

If \mathbf is a random permutation of the integers 1,2,\ldots,n and A_n \equiv _n(\mathbf), then it is possible to show that : E _n= \frac + \frac \qquad \text \qquad \operatorname _n= \frac - \frac. Moreover, as n \rightarrow \infty, the random variable A_n, appropriately centered and scaled, converges to a standard normal distribution.


Online algorithms

The longest alternating subsequence problem has also been studied in the setting of
online algorithm In computer science, an online algorithm is one that can process its input piece-by-piece in a serial fashion, i.e., in the order that the input is fed to the algorithm, without having the entire input available from the start. In contrast, an o ...
s, in which the elements of \mathbf are presented in an online fashion, and a decision maker needs to decide whether to include or exclude each element at the time it is first presented, without any knowledge of the elements that will be presented in the future, and without the possibility of recalling on preceding observations. Given a sequence X_1, X_2, \ldots, X_n of independent random variables with common continuous distribution F, it is possible to construct a selection procedure that maximizes the expected number of alternating selections. Such expected values can be tightly estimated, and it equals (2-\sqrt)n + O(1). As n \rightarrow \infty, the optimal number of online alternating selections appropriately centered and scaled converges to a normal distribution.


See also

*
Alternating permutation In combinatorial mathematics, an alternating permutation (or zigzag permutation) of the set is a permutation (arrangement) of those numbers so that each entry is alternately greater or less than the preceding entry. For example, the five alte ...
*
Permutation pattern In combinatorial mathematics and theoretical computer science, a permutation pattern is a sub-permutation of a longer permutation. Any permutation may be written in one-line notation as a sequence of digits representing the result of applying the p ...
and pattern avoidance * Counting local maxima and/or local minima in a given sequence * Turning point tests for testing statistical independence of n observations * Number of alternating runs *
Longest increasing subsequence In computer science, the longest increasing subsequence problem is to find a subsequence of a given sequence in which the subsequence's elements are in sorted order, lowest to highest, and in which the subsequence is as long as possible. This subseq ...
*
Longest common subsequence problem The longest common subsequence (LCS) problem is the problem of finding the longest subsequence common to all sequences in a set of sequences (often just two sequences). It differs from the longest common substring problem: unlike substrings, sub ...


References

{{reflist * * * * Problems on strings Permutations Combinatorics Dynamic programming